package com.example.csupermaket.mapper;


import com.example.csupermaket.pojo.entity.User;
import com.example.csupermaket.pojo.vo.UserStandardVO;
import org.apache.ibatis.annotations.Param;


public interface UserMapper {

    /**
     * 注册用户
     * @param user 注册信息
     * @return 受影响行数
     */
    int insert(User user);

    /**
     * 通过id 修改用户信息
     * @param user 修改的信息
     * @return 受影响行数
     */
    int updateInfoById(User user);




    /**
     * 统计为当前名称的用户数量
     * @param name 用户名
     * @return 个数
     */
    int countByName(String name);

    int countByNameAndNotId(@Param("uid") int id, @Param("username")String username);

    /**
     * 通过username查询用户信息
     * @param username 要查询的用户username
     * @return 查询到的用户信息
     */
    UserStandardVO getStandardByName(String username);

    /**
     * 通过id查询用户信息
     * @param id 要查询的用户id
     * @return 查询到的用户信息
     */
    UserStandardVO getStandardById(int id);

}
